World wide web access for voice mail and page

ABSTRACT

An integrated message processing system is provided. The message processing system allows for the management of a plurality of messages all within an integrated graphical environment. Allowable messages types include voice messages, pages, facsimile messages and electronic mail messages. The message processing system stores these messages irrespective of the message format. Upon request from a subscriber, the message processing system converts a message stored in a first format to a second format, if necessary, and transmits the requested message to the subscriber. The message processing system displays information to a subscriber using a self-hosting program such as a JAVA™ application, which is downloaded to the remote client if the remote client does not have such a self-hosting program executing thereon or the remote client has an older version of the program. By having the self-hosting program, which provides a user interface for displaying the requested information, stored locally on the remote client, the amount of data thereafter transferred from the web server is minimized and, thus, the subscriber&#39;s display is updated more quickly.

FIELD OF THE INVENTION

This invention relates generally to integrated voice, facsimile, pagingand electronic mail systems. More particularly, this invention relatesto a message processing system which allows a subscriber to input,access, manipulate and originate voice, facsimile, paging and electronicmail data through a personal computer.

BACKGROUND OF THE INVENTION

A wide variety of communications alternatives are currently available totelecommunications subscribers. For example, facsimile transmission ofprinted matter is available through what is commonly referred to as astand-alone facsimile machine. Alternatively, facsimile-modemcommunication systems are currently available for personal computersubscribers which combine the operation of a facsimile machine with theword processor of a computer to transmit documents held on computerdisk. Modern communication over telephone lines in combination with apersonal computer is also known in the art where file transfers can beaccomplished from one computer to another. Also, simultaneous voice andmodem data transmitted over the same telephone line has beenaccomplished in several ways.

There is a need, however, for a communications system which combines awide variety of communication functions into an integratedhardware-software product such that the subscriber can convenientlychoose a mode of communication from a single user interface.

SUMMARY OF THE INVENTION

In accordance with the present invention, a method and apparatus areprovided for a message processing system. The message processing systemprovides a plurality of subscribers with the capability of transmitting,receiving and managing voice mail, facsimile, paging and electronic mailmessages all within an integrated graphical environment. Messagemanagement includes displaying message summary information for allmessages, displaying account information, such as number of calls placedon a given day, retrieving individual messages, creating messages,modifying messages and forwarding messages. The message processingsystem can operate locally in a closed environment, as well as over theInternet.

In accordance with another aspect of the invention, the subscriber maycreate an electronic mail message. The electronic mail message can beconverted and ultimately sent to a pager or a cellular telephone.Alternatively, the electronic mail message can be converted andforwarded to another subscriber's voice mail account. It can also beconverted to a facsimile message and sent to any facsimile machine.

In accordance with still another aspect of the invention, the messageprocessing system divides a message into pages, including a header page.The message is transmitted one page at a time. The subscriber can ceasetransmission of the message at any time.

In accordance with a further aspect of the invention, the messageprocessing system allows the subscriber the capability of specifying amethod of notification of incoming messages. For example, the subscribermay be notified via page or cellular telephone.

In accordance with yet a further aspect of the invention, when asubscriber registers with the message processing system, a graphicaluser interface is downloaded to the remote client. By having the userinterface stored locally, rather than downloading the user interfaceeach time the subscriber uses the message processing system, thesubscriber's display is updated more quickly.

Some of the advantages of the present invention include: platformindependence; network independence; operating system independence; andcommon transport protocols to remote clients.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing aspects and many of the attendant advantages of thisinvention will become more readily appreciated as the same becomesbetter understood by reference to the following detailed description,when taken in conjunction with the accompanying drawings, wherein:

FIG. 1 is an exemplary environment in which a message processing systemaccording to the present invention operates;

FIG. 1A is a block diagram of the several components of a remote clientshown in FIG. 1;

FIG. 2 is flow diagram illustrating the logic used by the messageprocessing system;

FIG. 3 is flow diagram illustrating the logic used to authenticate asubscriber;

FIG. 4 is flow diagram illustrating the logic used to perform thedefault behavior; and

FIG. 5 is flow diagram illustrating the logic used to process a message.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 is a block diagram of the message processing system of thepresent invention. The message processing system can be viewed as havingthree major components: a plurality of remote clients 10; a collectionof server components 20, 22, 24, and 26; and a choice of communicationmedium 12, 14, 16 and 17, or 18. Each user of the message processingsystem, known as a subscriber, uses a remote client 10 to access theserver components 20, 22, 24, and 26 of the message processing system.The remote client 10 accesses the server components of the messageprocessing system via one of the available communication media 12, 14,16, or 18.

The key components of an individual remote client are illustrated inFIG. 1A. The remote client 10 is any computer including a desktopPersonal Computer (PC), a laptop PC or a Personal Digital Assistant(PDA). Those of ordinary skill in the art will appreciate that theremote client 10 includes many more components than those shown in FIG.1A. However, it is not necessary that all of these generallyconventional components be shown in order to disclose an illustrativeembodiment for practicing the present invention. As shown in FIG. 1A,the remote client 10 includes a processing unit 30, a display 36 and amemory 32. Memory 32 generally comprises a random access memory (RAM),read only memory (ROM), and a permanent mass storage device, such as ahard disk drive, tape drive, optical drive, floppy disk drive, or acombination thereof. The memory 32 stores the program code and datanecessary for displaying a user interface portion of the messageprocessing system.

The user interface portion of the message processing system is viewed bythe subscriber on the display 36 of the remote client 10 by means of anyoff-the-shelf web browser 34 or by a JAVA™ application obtained usingthe web browser. Once the JAVA™ application is obtained, the JAVA™application can be executed without the need for the web browser. Theremote client 10 also includes an input device 38 for entering commandsto the user interface. The input device may be a keyboard, mouse,track-ball, etc., or some combination of the above-mentioned devices.

As shown in FIG. 1A, the remote client 10 includes an external interface29. The external interface is the means by which the remote client 10connects to the server components 20, 22, 24, and 26 as shown in FIG. 1.This connection may be via an intranetwork, an internetwork or a modem.Accordingly, external interface 29 includes the necessary circuitry forsuch a connection, and is also constructed for use with the TCP/IPprotocol (if an internetwork connection), the particular networkconfiguration of the local area network or wide area network it isconnecting to, and a particular type of communication medium.

Returning to FIG. 1, the remote client 10 requires a method ofconnecting to the server components 20, 22, 24, and 26 of the messageprocessing system. The remote client 10 may connect to the servercomponents via a voice mail system 22 component over a wireless network12, or a public switched telephone network (PSTIN) 14. Once a connectionis made to the voice mail system, the remote client 10 can communicatewith all of the other server components of the message processingsystem, namely, a World Wide Web (WWW) server 20, a facsimile (fax)server 24 and an electronic mail server 26. The remote client 10 canconnect directly to all of the server components via a private network(e.g. a LAN). The remote client can also connect directly to all of theserver components over the Internet 16. A firewall 17 is provided forsecurity purposes to prevent unauthorized access into the messageprocessing system over the Internet. Once the subscriber has made aconnection from the remote client 10 via any one of the communicationmedia described above, the subscriber can access all of the servercomponents either directly or indirectly over the selected communicationmedia.

The message processing system receives, manages and transmits messagesof a myriad of formats comprising voice, paging, facsimile, andelectronic mail. The voice mail system 22 is the mechanism fortransmitting and receiving voice messages and pages. The voice mailsystem is also the server component that contains a central database.The central database is a repository for all of the messages stored foreach subscriber, irrespective of the message format (e.g. voice, page,facsimile, electronic mail). This includes all new messages, as well asall saved messages. The central database also stores information abouteach subscriber, known as profile information. Details about thesubscriber's profile information are described below in connection witha registration function shown in a block 58 of FIG. 3.

The World Wide Web (WWW) server 20 consists primarily of off-the-shelfcomponents. It also includes a protocol capable of communicating withthe voice mail system 22 and the facsimile (fax) server 24. Subscriberinformation and messages retrieved by the WWW server 20, as well asfacsimile messages received by the facsimile server 24, are depositedinto the central database on the voice mail system 22 by the WWW server20. The WWW server 20 must be able to support JAVA™ clients. Ideally,the web browser 34 running on the remote client 10 will be JAVA™capable. The WWW server 20 also provides all of the necessary messageconversion functionality. For example, conversions are necessary toconvert between various graphical data formats, such as TIFF, andfacsimile data formats, such as G3/G4. The WWW server 20 also providesthe capability for Multipurpose Internet Mail Extension (MIME) encodingof messages. MIME encoding may be necessary for actually playing voicemail messages or panning facsimile messages by the remote client 10.

The WWW server 20 can also divide a message into multiple pages, orsub-pages for transmission to the remote client 10. This allows theremote client 10 to begin displaying a header and the first pages of themessage without first having to wait for the entire message to bedownloaded. Present message processing systems require the entiremessage to be downloaded prior to displaying the message. This can bevery time consuming. For example, in a wireless community, the bandwidthto the remote client may be as low as 2400 Bits Per Second (BPS). Atypical facsimile page in G3 compressed format contains approximately65535 byes of data. Using a baud rate of 2400 BPS, it would take about3.6 minutes to receive one facsimile page. By dividing the message intopages, the present invention allows the remote client the capability ofterminating the transmission of the message at any time.

The electronic mail server 26 is an off-the-shelf components whichprovides for receipt, storage and transmission of electronic mailmessages.

FIG. 2 is a flow diagram depicting the overall logic used by the messageprocessing system. As can be seen in FIG. 1, and noted above, aplurality of remote clients 10 can use the message processing systemsimultaneously. The logic depicted in the flow diagram is for onesubscriber using the message processing system via one remote client 10.It will be appreciated that the logic shown in FIG. 2 will be repeatedfor each subscriber using the message processing system by means of aremote client 10.

The logic begins in FIG. 2 in a block 39 and proceeds to a block 40 inwhich the subscriber connects to the voice mail system component 22 ofthe message processing system using one of the methods of connectiondiscussed above in conjunction with FIG. 1. Upon connection to the voicemail system 22, the logic proceeds to a block 42 where the subscriber isauthenticated. The subscriber authentication process is shown in detailin FIG. 3.

The logic authenticating a subscriber as shown in FIG. 3 begins in ablock 50 and proceeds to a block 51 with the display of a greetingscreen on the remote client 10. The greeting screen requests thesubscriber's identification and password. After the subscriber'sidentification and password have been entered, the logic proceeds to ablock 52 where the message processing system processes the subscriberidentification data in order to verify that a valid combination ofsubscriber identification and password have been entered. Once a validcombination of subscriber identification and password has been entered,the logic proceeds to a decision block 60 which determines whether thereis a valid registration for the subscriber.

If in decision block 60 it is determined that there is a validregistration for the subscriber, the logic proceeds to a decision block55 to determine whether the subscriber requires a user interface to bedownloaded to the remote client 10. Possible reasons for an existingsubscriber needing to download a new user interface include thesubscriber moving to a new remote client computer or an upgrade to theuser interface. By downloading the majority of the user interface sothat it can be run locally on the remote client, the amount ofinformation downloaded to the remote client 10 during run-time isgreatly reduced, thereby updating the remote client's display 36 morequickly. If in decision block 55 it is determined that the subscriberdoes need a new copy of the user interface, the logic proceeds to ablock 56 where a copy of the user interface is downloaded to the remoteclient 10.

If it is determined in decision block 60 that there is not a validregistration for the subscriber, then the logic proceeds to a decisionblock 54 to determine whether the subscriber is a first-time user. Ifthe subscriber is a first-time user, then the logic proceeds to a block58 to register the subscriber followed by block 56 where the userinterface is downloaded to the remote client 10.

The registration process 58 requests profile information from thesubscriber. This profile information includes items such as thesubscriber's name, address, telephone number, facsimile number,electronic mail address, and password. The profile information alsoincludes subscriber preferences such as a default behavior, a greeting acaller will hear when he or she calls to reach the subscriber, and howthe subscriber will be notified of incoming calls (e.g. pager orcellular phone). In an actual embodiment of the present invention, theregistration service utilizes a secure HyperText Markup Language (HTML)method to ensure privacy.

If, on the other hand, the determination in decision block 60 is thatthere is not a valid registration, but the determination in decisionblock 54 is that the subscriber is not a first-time user, then the logicwill proceed to block 58 to re-register the subscriber. The userinterface will not be downloaded automatically since it is assumed thatif the subscriber is not a first-time user, a user interface haspreviously been downloaded to the remote client 10. However, the logicwill proceed to decision block 55 to determine whether a new copy of theuser interface needs to be downloaded to the remote client 10. In anactual embodiment of the present invention, the subscriber's version ofthe user interface is checked, and if there is a more recent version ofthe user interface available, the subscriber is notified. The subscribermay then choose whether or not to have the new version of the userinterface downloaded. If it is determined in decision block 55 that thesubscriber needs a new copy of the user interface, then the logicproceeds to block 56 where the user interface is downloaded to theremote client 10.

Following any required registration 58 and/or download of the userinterface to the remote client 56, the logic then proceeds to a block 59where the authenticate subscriber logic terminates.

Returning to FIG. 2, once the subscriber has been authenticated 42, thelogic proceeds to a block 44 where the default behavior as specified inthe subscriber's profile is performed. The performance of the defaultbehavior is depicted in FIG. 4. The logic in FIG. 4 begins in a block 70and proceeds to a block 72 for determination of the default behaviorthat is to be performed. The default behavior is configurable by theremote client 10. The same default behavior will be used each time theremote client activates the message processing system until the remoteclient changes the selected default behavior.

The default behavior may be selected from among the following: listmessages available for retrieval; retrieve all unread facsimilemessages; or send a facsimile message. If in block 72 it is determinedthat the selected default behavior is to list all messages, the logicproceeds to a block 74 where the message processing system will transmita list containing subscriber summary information about all of thesubscriber's messages currently stored in the database to the remoteclient 10 for display. If in block 72 it is determined that the selecteddefault behavior is retrieve all unread facsimile messages, then thelogic proceeds to a block 76 where all unread facsimile messages will bedownloaded from the message processing system to the remote client 10.In an actual embodiment of the present invention, the unread facsimilemessages will be download in priority, i.e. high priority messagesfirst. Within a given priority, messages are downloaded on afirst-in-first-out basis. The subscriber may cease download of thefacsimiles from the message processing system at any time. Thesubscriber may terminate the download of a specified message or of allmessages. Finally, if in block 72 it is determined that the selecteddefault behavior is to send a facsimile message, then the logic proceedsto a block 78 where the remote client 10 will immediately begin afacsimile upload when it connects to the server components. In an actualembodiment of the present invention, facsimile messages are stored in adefault directory. All messages in the default directory will beuploaded when the remote client 10 connects to the server components.Irrespective of the default behavior performed as determined by block72, once the appropriate default behavior has been performed, the logicproceeds to a block 80 where the logic for the performance of thedefault behavior is terminated.

Returning to FIG. 2, after the default behavior is performed 44, thelogic proceeds to a block 46 where a message is processed. FIG. 5 showsin more detail the logic of the process a message 46 function. The logicin FIG. 5 begins in a block 89 and proceeds to a block 90 where a menuof options is displayed on the remote client 10. The possible functionscomprise: displaying a summary list; retrieving a message; continuing anaborted download; deleting a file; un-deleting a previously deletedmessage; forwarding a message; transmitting a facsimile to a facsimilemachine; or depositing a message directly into another subscriber'saccount. The logic then proceeds to a block 92 where the subscriberselects one of the options from the menu displayed by block 90. Thesubscriber's selection is transmitted to the voice mail system 22 forprocessing. The logic then proceeds to a block 94 where the functionspecified by the subscriber is performed. The types of messages whichmay be processed include any of the valid message types, unlessspecifically stated to the contrary. Valid message types include voicemail, facsimile messages, pages, and electronic mail message.

If in block 94 it is determined that the subscriber selected the displaysummary list option, then the logic proceeds to a block 96 whereinformation for each message that is currently in the subscriber'saccount, is presented to the subscriber. This information includes themessage type (e.g., facsimile, voice, etc.), message state (i.e., new,saved), message status (e.g., urgent, confidential), message time anddate, and if the message is a facsimile, the number of pages and thestation identifier are also displayed.

If in block 94 it is determined that the subscriber selected theretrieve a message option, the logic then proceeds to a block 98 where amessage selected by the subscriber is retrieved. In an actual embodimentof the present invention, if the subscriber wishes to retrieve amessage, summary information is displayed for all of the messages. Thesubscriber then selects which message or messages, if any, are to beretrieved.

If in block 94 it is determined that the subscriber elected to continuean aborted download, then the logic proceeds to a block 100 where thesubscriber can continue the download of a specified message. In anactual embodiment of the present invention, the subscriber may choose tocontinue the download of one or more messages which were previouslyaborted. In an actual embodiment of the present invention, if the userselects the continue aborted transmission function, summary informationfor all aborted transmissions is displayed. The subscriber may thenselect which messages, if any, to continue downloading. The subscribermay also elect to continue the download of all previously abortedtransmissions. The continuation of a transmission begins at the positionin the message where the transmission was aborted. If the subscriberwishes to download the entire message, the subscriber can choose theretrieve message function as described above.

If in block 94 it is determined that the subscriber elected to delete amessage, then the logic proceeds to a block 102 where a message selectedby the subscriber is deleted. Any message, including voice messages, maybe deleted at any time, including during transmission of the message.Deleted messages will be placed in a trash folder. In other words, theyare marked for deletion, but are not actually deleted. The messages areactually deleted from the message processing system when the message isdeleted from the trash folder. In one embodiment of the presentinvention, the subscriber may configure the system to automaticallydelete messages in the trash folder upon exit from the messageprocessing program. If in block 94 it is determined that the subscriberselected the un-delete of a previously deleted message function, thelogic proceeds to a block 103. Messages still in the trash folder may berestored by using the un-delete function. Once a message has beendeleted from the trash folder, it cannot be un-deleted.

If in block 94 it is determined that the subscriber chose to forward amessage, then the logic proceeds to a block 104 where a selected messagemay be forwarded to a destination entered by the subscriber. If in block94 it is determined that the subscriber chose to transmit a facsimile toa specified facsimile machine, then the logic proceeds to a block 106where the specified facsimile is transmitted to the specified facsimilemachine. Finally, if in block 94 it is determined that the subscriberchose to deposit a message to another subscriber's account, then thelogic proceeds to block 108 where the specified message is depositeddirectly into another valid subscriber's account by entering therecipient's subscriber identification information. Irrespective of thefunction performed as determined by block 94, once the desired functionhas been performed, the logic proceeds to a block 110 where the logicfor the process a message function terminates.

Returning to FIG. 2, after a message is processed, the logic proceeds toa decision block 47 where it is determined whether the subscriber wishesto exit from the message processing system. If the subscriber wishes toexit from the message processing system, the logic proceeds to atermination function in a block 48. The termination function closes anyopen files, disconnects the remote client 10 from the message processingsystem, and shuts down the user interface running on the remote client10. On the other hand, if in decision block 47 it is determined that theuser does not wish to terminate, then the message processing function 46will be performed again. In this regard, following the performance ofthe default behavior 44, the message processing function 46 isrepeatedly performed until the subscriber wishes to exit as determinedin decision block 47.

While the preferred embodiment of the invention has been illustrated anddescribed, it will be appreciated that various changes can be madetherein without departing from the spirit and scope of the invention.

The embodiments of the invention in which an exclusive property orprivilege is claimed are defined as follows:
 1. An integrated messageprocessing system, comprising: (a) a management component including atleast one server, wherein said management component manages a pluralityof types of messages; (b) a self-hosting user interface component fordisplaying and manipulating the plurality of types of messages; (c) aremote client on which the self-hosting user interface component is tobe stored and executed such that the remote client, via the self-hostinguser interface component, controls the processes of displaying andmanipulating the plurality of types of messages; (d) a communicationsmedia, wherein said communications media facilitates communicationsbetween said remote client and said self-hosting user interface andmanagement components; and (e) a transmissions media, wherein saidself-hosting user interface component is transmitted to said remoteclient over said communications media via said transmissions media. 2.The message processing system of claim 1, wherein said communicationsmedia is a selected one from a group comprising a wireless network, apublic switched telephone network, an Internet, and a private network.3. The integrated message processing system of claim 1, wherein saidself-hosting user interface component is a JAVA™ application.
 4. Theintegrated message processing system of claim 1, wherein saidself-hosting user interface component for execution on said remoteclient is downloaded to said remote client if said remote client doesnot have said self-hosting user interface component or said remoteclient has an older version of said self-hosting user interfacecomponent.
 5. (Twice Amended) The integrated message processing systemof claim 4, wherein said self-hosting user interface component isautomatically downloaded to said remote client if said remote client hasan older version of said self-hosting user interface component.